﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Wicture.QPZS.EPC.API.Domain.Entities;

namespace Wicture.QPZS.EPC.API.Repository
{
    public interface IServiceRepository
    {
        AccountPackageEntity GetAccountPackage(int accountId);
        ServicePackageEntity GetServicePackage(int packageId);
        AccountPackageApiEntity GetAccountPackageApis(int accountPackageId, int definitionId);
        ServiceDefinitionEntity GetServiceDefinition(string name);
        void AddApiConsumed(int packageApiId, int cost);
        void AddPackageConsumed(int packageId, int cost);
        ServiceAccountEntity GetAccount(int id);
        void CostBalance(int id, decimal cost);
        void AddCostLog(int accountId, int packageId, string apiName, string request, decimal cost);
        List<AccountPackageApiBrandEntity> GetAccountPackageApiBrands(int packageApiId);

    }
}
